#ifndef ENTITY_H
#define ENTITY_H

#include <vector>

#include "surface.h"
#include "animation.h"

class Entity {
public:
  static std::vector<Entity*> EntityList;
  
protected:
  Animation     animCtrl;
  SDL_Surface*  surf_Entity;
  
public:
  float x, y;
  int   cellX, cellY;
  int   width, height;
  int   animState;
  
public:
  Entity();
  virtual ~Entity();
  
public:
  virtual bool Load(char* File, int Width, int Height, int MaxFrames);

  virtual void Loop();

  virtual void Render(SDL_Surface* Surf_Display);

  virtual void Cleanup();
};

#endif
